using Simple.Contracts.Contracts;
using Simple.Contracts.Models.Common;
using Simple.Services.Services;

namespace Simple.WebAi.Extensions
{
    /// <summary>
    /// 服务扩展
    /// </summary>
    public static class ServiceExtensions
    {
        /// <summary>
        /// 框架扩展：注册使用服务
        /// </summary>
        /// <param name="services"></param>
        /// <returns></returns>
        public static void AddServices(this IServiceCollection services)
        {
            services.AddScoped<CurrentAccount>();

            services.AddTransient<IRedisService, RedisService>();
            services.AddTransient<IFileService, FileService>();
            services.AddTransient<ISmsService, TencentCloudSmsService>();
            services.AddTransient<IAuthenticateService, AuthenticateService>();
            services.AddTransient<ISysPlacesService, SysPlacesService>();
            services.AddTransient<IWeChatService, WeChatService>();
         
            services.AddTransient<ICompanyService, CompanyService>();
            services.AddTransient<IRoleService, RoleService>();
            services.AddTransient<IEmployeeService, EmployeeService>();
            services.AddTransient<IAccountService, AccountService>();
            services.AddTransient<IDashboardService, DashboardService>();
           
            services.AddTransient<IElderlyService, ElderlyService>();
            services.AddTransient<ICareMissionService, CareMissionService>();
            services.AddTransient<ICareMissionCategorizeService, CareMissionCategorizeService>();
            services.AddTransient<ICarePlanTemplateService, CarePlanTemplateService>();
        }
    }
}
